package business.knBase

import java.util.List;
import business.parser.ParserUtils;
import domain.Center

/**
 * Utiles varios para consultas a la base de datos de conocimiento
 * @author 53385255R
 *
 */
public class KnBaseUtils {

	/**
	* Comprueba si alguna de las palabras dadas tiene un codigo extranjero y los devuelve
	* @param segment segmento de pais, sin palabras con numero ni palabras menores de 3 letras
	* @return codigos ISO
	*/
   public List<String> getForeignCodes(String segment) {
	   List<String> codes = new ArrayList<String>();
	   
	   
	   String code = KnBase.getInstance().foreignWord.get(segment);
	   if (code != null)
	   	codes.add(code)
	   
	   return codes;
   }
   
  
   
   /**
	* Comprueba si el segmento formado por las palabras dadas tiene un codigo extranjero y los devuelve
	* Se excluyen palabras con numeros y menores de 3 letras
	* @param words
	* @return codigos ISO
	*/
   public List<String> getForeignCodes(String[] words) {
	   List<String> codes = new ArrayList<String>();
	   
	   String segment = "";
	   
	   //De las palabras encontradas obtenemos el segmento valido
	   words.each { wrd ->
		   if (wrd.length() > 2 && !ParserUtils.isZipCode(wrd))
			   segment += " ${wrd}"
	   }
	   
	   return getForeignCodes(segment.trim());
	
   }
  
}
